#ifndef RETURNCODE_H_TheFoosaAreAttacking
#define RETURNCODE_H_TheFoosaAreAttacking

namespace ReturnCode{
	enum {
		OK,
		ASSERTION_ERROR,
		INVALID_COORD,
		INVALID_OPACITY,
		OUT_OF_MEM,
		INVALID_SURFACE,
		UNSUPPORTEDMODE,
		STRING_TOO_LARGE, 
		ERROR_OPENING_IMAGE,
		ERROR_OPENING_VIDEO,
		ERROR_OPENING_SOUND,
		ERROR_SAVING_IMAGE,
		END_OF_VIDEO,
		UNSUPPORTED_IMAGE_TYPE,
		UNSUPPORTED_SOUND_TYPE,
		INVALID_FONT,
		INVALID_SOUND,
		AUDIO_INIT_FAILED,
		ERROR_PLAYING_SOUND,
		FILE_NOT_INITIALIZED,
		NULL_PARAMETER,
		VIDEO_NOT_INITIALIZED,
		WRONG_PATH,
		CANNOT_RESOLVE_FILE,
		CANNOT_CREATE_FILE_SYSTEM,
		NO_BASE_FILE_DECLARED,
		NO_SEEKABLE_FILEOBJECT,
		NO_MORE_CHILDS,
		ERROR_OPENING_FILE_PARENT,
		ERROR_OPENING_FILE,
		ERROR_CREATING_FILE,
		ERROR_CREATING_FOLDER,
		ERROR_DELETING_FILE,
		ERROR_CROSSING_FOLDER,
		ERROR_SEEKING_FILE,
		ERROR_GETCHILD_NOT_ALLOWED,
		ERROR_FILE_TOO_DEEP,
		FOLDER_DOES_NOT_EXIST,
		FILE_DOES_NOT_EXIST,
		CREATE_FOLDER_NOT_ALLOWED,
		CREATE_FILE_NOT_ALLOWED,
		CREATE_FILESYSTEM_NOT_ALLOWED,
		DELETE_FILE_NOT_ALLOWED,
		DELETE_FOLDER_NOT_ALLOWED,
		FOLDER_NOT_OPENED,
		WRONG_SEEK_METHOD,
		ERROR_PROCESSING_ZIP,
		WRONG_ZIP_SPLITTED,
		ERROR_DECOMPRESSING_FILE,
		UNSOPPORTED_COMPRESSION_METHOD,
		ERROR_DELETING_FOLDER,
		ERROR_RESOLVING_FILE,
		FPS_NOT_INITIALIZED,
		EMPTY_FILE,
		ERROR_READING_SUBTITLES,
		ERROR_MOVING_PANEL,
		UNKNOWN_ERROR,
		RESERVED_RETURN_CODES
	};
    /* both attributes of a point (x and y) are setted to NO_INTERSECTION
	 * when the intersect method is called and there is no intersection 
	 * between the surfaces
	 */
	enum{ NO_INTERSECTION = -1 };
};

#endif //RETURNCODE_H_TheFoosaAreAttacking
